package com.frame.work.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.time.LocalDateTime;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

/**
 * 网关表
 *
 * @author wjming
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "`tbl_gateway`")
public class TblGateway extends BaseClassEntity implements Serializable {
    /**
     * 所属家庭ID
     */
    @TableField(value = "`home_id`")
    private String homeId;

    /**
     * 网关ZigBee模块mac地址
     */
    @TableField(value = "`zigbee_mac`")
    private String zigbeeMac;

    /**
     * 网关wifi模块mac地址
     */
    @TableField(value = "`wifi_mac`")
    private String wifiMac;
    /**
     * 网关远程地址
     */
    @TableField(value = "`remote_ip`")
    private String remoteIp;

    /**
     * 网关地址
     */
    @TableField(value = "`gateway_address`")
    private String gatewayAddress;
    /**
     * 网关wifi模块IP地址
     */
    @TableField(value = "`wifi_ip`")
    private String wifiIp;

    /**
     * 网关名称
     */
    @TableField(value = "`name`")
    private String name;

    @TableField(value = "`zdrwbz`")
    private String zdrwbz;

    /**
     * 布防标志 01 布防 02 撤防
     */
    @TableField(value = "`defend_status`")
    private String defendStatus;

    /**
     * 报警状态 01 报警 02 非报警
     */
    @TableField(value = "`alarm_status`")
    private String alarmStatus;

    /**
     * 图片地址
     */
    @TableField(value = "`img_url`")
    private String imgUrl;

    /**
     * 是否推送
     */
    @TableField(value = "`gateway_push`")
    private String gatewayPush;

    @TableField(value = "`switch_time`")
    private LocalDateTime switchTime;

    /**
     * 硬件版本号
     */
    @TableField(value = "`hardware_version_number`")
    private String hardwareVersionNumber;

    /**
     * 软件版本号
     */
    @TableField(value = "`software_version_number`")
    private String softwareVersionNumber;

    /**
     * 厂商编码
     */
    @TableField(value = "`manufacturer_code`")
    private String manufacturerCode;

    private static final long serialVersionUID = 1L;
}